Computer networks have transformed the way modern mankind communicates. Conventionally, communication protocols have been operated by the operating system of the communicating computing systems. The communications take the form of network packets, which are transmitted over packet-switched networks, such as the Internet. The processing of network packets using the communication protocols takes processing cycles that could be used to perform other computing system functions, and often requires data be read and written over the memory bus a number of times. As network speeds increase, this use of processing cycles to process sent and received packets can threaten to significantly slow the other functionality of the computing system.
While processing speeds are increasing, network speeds are increasing even faster. Thus, the continued use of the operating system and host processors to processing sent and received packets could overwhelm the capabilities of the host processors to perform other tasks. Remote Direct Memory Access (RDMA) refers to the ability to perform direct memory access of the memory locations of one computing system into the memory of another, perhaps remote, computing system, without using the operating system of either computing system. This preserves processing cycles and memory bus bandwidth at both computing systems, thereby rendering the computing systems more responsive to higher message dispatch and arrival rates.
The subject matter claimed herein is not limited to embodiments that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one exemplary technology area where some embodiments described herein may be practiced.